package reflect;

import java.util.Arrays;

/**
 * JDK5之后推出的一个特性:可变长参数
 * 修饰符 返回值类型 方法名(参数类型... 参数名){
 *
 * }
 * 特点:
 * 1:可变长参数的实质其实是一个数组
 * 2:可变长参数,可以不传参,也可以传一个数组
 * 3:可变长参数声明时,只能作为最后一个参数声明
 * 4:一个方法中只能最多有一个可变长参数
 */
public class ArgsDemo {
    public static void main(String[] args) {
        doSome("A");
        doSome("A",1);
        doSome("S",1,2);
        doSome("S",1,2,3);
        doSome("D",1,2,3,4);
        doSome("D",1,2,3,4,5);
        doSome("D",1,2,3,4,5,6);
        doSome("D",new int[]{5,2,1});
    }
    public static void doSome(String a,int... args){
        for (int arg : args) {
            System.out.print(arg);
        }
        System.out.println();
        System.out.println("----------------------");
    }
}
